Java构造方法私有化和对象数组

您所在的位置:网站首页 java object数组怎么添加 Java构造方法私有化和对象数组

Java构造方法私有化和对象数组

#Java构造方法私有化和对象数组| 来源: 网络整理| 查看: 265

一.构造方法私有化

类的封装性不只体现在属性上,方法也可以被封装的,当然也包含了对构造方法的封装。如下实例:

public class Single { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub SingleT s1 = SingleT.getSingleT(); SingleT s2 = SingleT.getSingleT(); SingleT s3 = SingleT.getSingleT(); s1.print(); s2.print(); s3.print(); } } class SingleT { private static SingleT singleT = new SingleT(); private SingleT(){ } public static SingleT getSingleT(){ return singleT; } public void print(){ System.out.println("你好,时间"); } }

图一 这种称为单例模式,无论程序怎么样运行,SingleT 类只有一个实例化对象存在。只要将构造函数私有化,就能控制实例化对象的产生。

二.对象数组

对象数组:包含了一组相关对象的数组。数组一定要先开辟空间,但是因为是引用数据类型,所以数组中每一个对象的值都是null值,使用时数组的每一个对象都要分别进行实例化操作。对象数组的声明如下: 类 对象数组名称[] = new 类[数组长度]; 实例如下:

public class Array { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Person1 per[] = new Person1[3]; for(int i = 0;i System.out.print(per[i].get()+" "); } } } class Person1{ private String name; public Person1(String name){ this.name = name; } public String get(){ return this.name; } }

main方法中的String[] args就是对象数组。

三.内部类

在类中可以定义成员变量和方法,当然也可以定义类,这时类中定义的叫内部类,在外面的叫外部类,内部类定义格式为: 图二 实例如下:

class Outer{ private String info = "大家好"; class Innter{ public void print(){ System.out.print(info); } }; public void fun(){ new Innter().print(); } }; public class InnerDrmo { public static void main(String[] args) { // TODO Auto-generated method stub Outer outer = new Outer(); outer.fun(); } }

内部类的存在其实已经破坏了一个类的基本结构,它的唯一好处就是可以方便的访问外部类中的私有属性。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3